package io;

import java.io.PrintStream;

/**
 * 打印流-PrintStream
 */
public class PrintStream_ {

    public static void main(String[] args) throws Exception {

        /*
            打印流只有输出流，没有输入流
         */

        PrintStream out = System.out;
        //在默认情况下，PrintStream 输出数据的位置是 标准输出即显示器
        /*
            public void print(String s) {
                if (s == null) {
                    s = "null";
                }
                write(s);
            }
         */
        out.print("lmy, hello");
        //因为 print 底层使用 write方法，所以可以直接调用write方法进行打印/输出
        out.write("刘明阳你好".getBytes());
        out.close();

        //也可以修改打印流输出的位置/设备
        // 如修改到文件中，则会输出到文件中
        /*
            public static void setOut(PrintStream out) {
                checkIO();
                setOut0(out);   //native 方法 ，修改了 out
            }
         */
        System.setOut(new PrintStream("D:\\IdeaCode\\javaStudy\\f1.txt"));
        System.out.println("hello,打印流");

    }
}
